Field of the Invention
Embodiments of the invention generally relate to video screen capture and, more specifically, to techniques for providing a server-side video screen capture.
Description of the Related Art
There is a growing desire to capture the output generated as software applications run. One of the most popular forms of output to capture is the video data produced by an application for display to an end-user. The video data can be used to demonstrate features of the software application. The use of such video data to demonstrate features of software applications has become commonplace in the software industry. A video clip provides details that would be difficult to convey in written instructions alone. For instance, an end-user could create a video tutorial to share a difficult red-eye reduction technique in a photo-editing software application. The technique could involve some intriguing steps that are hard to describe without a visual demonstration. The video clip would show the video data of the photo editing software as the end-user demonstrates exactly how to perform the red-eye reduction technique.
Typically, a video capture application captures the video data of the target application. The video capture application reads and stores the video frames from the video buffers of the target application while running alongside the target application on the desktop computer of the end-user. The video capture application stores the video data as a video clip on the desktop computer. If the end-user wants to share or publish the video clip, the end-user typically uploads the video clip to an online server for storage and publication.
Although these video capture applications can create the video clip, these applications typically consume significant processing resources. The consumption of processing resources can affect the performance of the desktop computer detrimentally. Furthermore, a typical video clip file may be very large, which may consume a significant amount of storage space on the desktop computer. The consumption of storage space may prove especially problematic if the desktop computer runs out of storage space. Running out of storage space may jeopardize the integrity of the video capture as well as applications and data on the desktop computer. Further, if the end-user uploads the video clip, the upload process could consume a significant amount of network bandwidth and take a long time. The bandwidth consumption could affect the network performance and the long upload time could delay the sharing or publication of the video clip.
As the foregoing illustrates, what is needed in the art are application output capture systems that use less of the computer and network resources available to an end-user.